The rapid development of the Internet results in the rapid improvement of personal communication speed. The improvement of the communication speed provides an environment in which a large amount of data can be downloaded or uploaded by accessing a computer at a remote location or a computer at a remote location can be used as if the computer at the remote location was locally logged in to using a remote computer control program.
Furthermore, a screen virtualization-based cloud streaming service having an effect in which an application seems to be driven on the terminal of a client in such a manner that the application is driven on a server, a driving screen is compressed through video encoding and sent to the client, and the client plays back a received video has attracted attention.
A screen of an application that is driven on a cloud streaming system is updated with a predetermined frame cycle.
That is, a cloud streaming server executes an application, captures a screen corresponding to the result of the execution, encodes the captured screen, and sends the encoded screen to a terminal so that the result of the execution is sent to the terminal through streaming.
A very important problem is to manage the resource usage of a cloud streaming server because the resources of the cloud streaming server are shared by many users.
If a single application is executed on a cloud streaming server, a section actually having high resource usage is chiefly a predetermined specific section of a range in which the application is executed upon the execution of the application. In general, the length of the specific section is short. In this case, if the system resources of the cloud streaming server are not sufficient in the specific section, the operation of a cloud streaming system may become unstable and other users may be influenced. Accordingly, the cloud streaming server limits the maximum number of executable applications depending on the resource usage of the specific section.
For example, if an application is executed through a cloud streaming service, average CPU usage is about 5%. If the CPU usage of only a specific section is 30%, the resources of a cloud streaming system are unable to be efficiently used because the number of applications has to be limited in conformity with the specific section.
In particular, since a cloud streaming server needs to perform a streaming pipeline procedure of performing rendering, capture, encoding, and sending in each screen update cycle, the usage of system resources is high, and thus it is very important to efficiently use the system resources.
Furthermore, there are applications that use system resources in predetermined order. In connection with these applications, the sections in which many system resources are used are predetermined.
Accordingly, there is an urgent need for a new cloud streaming service technology that is capable of efficiently managing the system resources of a cloud streaming server when an application having high resource usage only in some specific sections is executed.
Furthermore, there is a difference in the amount of transmission depending on a change in a screen, and the time it takes to send a screen is longer if a change in the screen is large. As a result, a delay occurs until a client receives the screen after a user input. On the contrary, the time it takes to send a screen is shorter if a change in the screen is low, and a free band is generated until a user's subsequent input. Accordingly, a delay time can be minimized if data can be additionally sent using the free band.
Accordingly, there is an urgent need for a new cloud streaming service technology capable of reducing a response time by previously sending a screen including a section having a large change in the screen if a free band is present upon the provision of a cloud streaming service.
A related conventional technology includes Korean Patent Application Publication No. 10-2012-0072904 published on Jul. 4, 2012 (entitled “Method, Cloud computing server, and Cloud Computing System for Providing Game Service in Cloud Computing Environment”).
A related conventional technology includes Korean Patent Application Publication No. 10-2000-0040087 published on Jul. 5, 2000 (entitled “Method of Controlling Playback Speed of Video using Scene Change Distribution”).